1. Field of the Invention
The present invention relates to a system for exchanging electronic data between units, and more particularly to a system in which the exchange process can be completed in a fair manner for both of the units involved in the exchange process.
2. Description of the Related Art
With high-speed communications networks, such as ADSL (Asymmetric Digital Subscriber Line) and FTTH (Fiber To The Home), becoming more widespread in recent years, P2P (Peer To Peer) data exchange systems have been used for exchanging electronic data between units.
Early P2P systems were pure P2P data exchange systems in which each system included only two units. For example, WinMX is one of such systems. In a pure P2P data exchange system, a unit only has 1) a function of requesting the other party's unit to transmit data of interest, 2) a function of transmitting data requested by the other party's unit, 3) a function of receiving data from the other party's unit, and 4) a function of discontinuing data transmission to the other party's unit. With these functions, data can be transmitted and received by each other. However, due to the difference in data size between exchanged data or the difference in data transmission/reception speed between the units, one unit may complete receiving data earlier than the other unit. Therefore, in a pure P2P data exchange system, a first party may discontinue the data transmission to a second party when the first party completes receiving the data of interest. This unfairly prevents the second party from completing the data reception while the first party has completed receiving the data of interest.
In view of this, methods for preventing such an unfair practice have been proposed in the art, in which a server is provided that functions as a mediator for the data exchange process (see, for example, U.S. Pat. No. 6,061,792, and “Asynchronous Protocols for Optimistic Fair Exchange” by N. Asokan, Victor Shoup and Michael Waidner, Research Report RZ 2976 (#93022), IBM Research, December 1997).
In such a P2P data exchange system with a mediator server, data to be exchanged is first uploaded to the mediator server before initiating the data exchange between the units so that it is possible to address a situation where either unit fails to obtain the data of interest due to a certain problem during the data exchange between the units. In the P2P data exchange system with a mediator server, even if one terminal becomes unable to obtain the data of interest during the data exchange between the units, the unit failing to obtain the data of interest can be complemented with the data from the mediator server because the mediator server has the data being exchanged.